FROM php:{{ php_version }}-cli

ENV DEBIAN_FRONTEND noninteractive
ENV TERM            xterm-color

ARG DEV_MODE
ENV DEV_MODE $DEV_MODE

COPY ./rootfilesystem/ /

RUN \
    curl -sfL https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer && \
    chmod +x /usr/bin/composer                                                                     && \
    composer self-update {{ composer.version }}                                                    && \
    apt-get update              && \
    apt-get install -y             \
{%~ if inotify == true %}
        inotify-tools              \
{%~ endif %}
{%~ if option_curl == true  %}
        libcurl4-openssl-dev       \
{%~ endif %}
        libssl-dev                 \
        supervisor                 \
        unzip                      \
        zlib1g-dev                 \
        --no-install-recommends && \
{%~ if php_extensions is not empty %}
    pecl update-channels && \
    {%~ for name, data in php_extensions %}
    pecl install {{ name }}{% if data.version is not empty %}-{{ data.version }}{% endif %} && \
    {%~ endfor %}
    {%~ for name, data in php_extensions %}
        {%~ if data.enabled %}
    docker-php-ext-enable {{ name }} && \
        {%~ endif %}
    {%~ endfor %}
{%~ endif %}
    install-swoole.sh {% if swoole_version == "latest" %}master{% else %}{{ swoole_version }}{% endif %} \
        --enable-http2   \
        --enable-mysqlnd \
        --enable-openssl \
        --enable-sockets {% if option_curl == true  %}--enable-swoole-curl {% endif %}{% if option_json == true  %}--enable-swoole-json {% endif %}&& \
    mkdir -p /var/log/supervisor && \
    rm -rf /var/lib/apt/lists/* $HOME/.composer/*-old.phar /usr/bin/qemu-*-static

ENTRYPOINT ["/entrypoint.sh"]
CMD []

WORKDIR "/var/www/"
